package state;

// 测试礼让
// 礼让不一定成功
public class TestYeild {
    public static void main(String[] args) {
        MyYield myYield = new MyYield();

        new Thread(myYield,"a").start();
        new Thread(myYield,"b").start();

        /* 礼让失败
            a线程开始执行
            a线程结束执行
            b线程开始执行
            b线程结束执行

            礼让成功
            a线程开始执行
            b线程开始执行
            b线程结束执行
            a线程结束执行

         */
    }
}


class MyYield implements Runnable{
    @Override
    public void run() {
        System.out.println(Thread.currentThread().getName()+"线程开始执行");
        Thread.yield();//礼让
        System.out.println(Thread.currentThread().getName()+"线程结束执行");
    }
}
